module BCDToSeg(
	input  [3:0] BCD_in,
	output [7:0] Seg_out
);


	assign Seg_out[0]=~(BCD_in[3]|((~BCD_in[2])&(~BCD_in[0]))|BCD_in[1]|(BCD_in[2]&BCD_in[0]));
	assign Seg_out[1]=~((~BCD_in[2])|(BCD_in[1]&BCD_in[0])|((~BCD_in[1]&(~BCD_in[0]))));
	assign Seg_out[2]=~(BCD_in[2]|(~BCD_in[1])|BCD_in[0]);
	assign Seg_out[3]=~(BCD_in[3]|((~BCD_in[2])&(~BCD_in[0]))|((~BCD_in[2])&BCD_in[1])|(BCD_in[1]&(~BCD_in[0]))|(BCD_in[2]&(~BCD_in[1])&BCD_in[0]));
	assign Seg_out[4]=~(((~BCD_in[2])&(~BCD_in[0]))|(BCD_in[1]&(~BCD_in[0])));
	assign Seg_out[5]=~(BCD_in[3]|((~BCD_in[1])&(~BCD_in[0]))|(BCD_in[2]&(~BCD_in[1]))|(BCD_in[2]&(~BCD_in[0])));
	assign Seg_out[6]=~(BCD_in[3]|(BCD_in[1]&(~BCD_in[0]))|((~BCD_in[2])&BCD_in[1])|(BCD_in[2]&(~BCD_in[1]))); 
	assign Seg_out[7]=1;

endmodule
